/**
 * "Visual Paradigm: DO NOT MODIFY THIS FILE!"
 * 
 * This is an automatic generated file. It will be regenerated every time 
 * you generate persistence class.
 * 
 * Modifying its content may cause the program not work, or your work may lost.
 */

/**
 * Licensee: Universidad de La Frontera
 * License Type: Academic
 */
package orm;

import java.io.Serializable;
/**
 * CUENTAS DEL CLIENTE
 */
public class Cuenta implements Serializable {
	public Cuenta() {
	}
	
	private java.util.Set this_getSet (int key) {
		if (key == orm.ORMConstants.KEY_CUENTA_CONSUMO) {
			return ORM_consumo;
		}
		else if (key == orm.ORMConstants.KEY_CUENTA_PAGO) {
			return ORM_pago;
		}
		
		return null;
	}
	
	private void this_setOwner(Object owner, int key) {
		if (key == orm.ORMConstants.KEY_CUENTA_CLIENTECLIENTE) {
			this.clientecliente = (orm.Cliente) owner;
		}
	}
	
	org.orm.util.ORMAdapter _ormAdapter = new org.orm.util.AbstractORMAdapter() {
		public java.util.Set getSet(int key) {
			return this_getSet(key);
		}
		
		public void setOwner(Object owner, int key) {
			this_setOwner(owner, key);
		}
		
	};
	
	private int cuenta_ID;
	
	private String tipo;
	
	private int codigo_medidor;
	
	private String compania;
	
	private orm.Cliente clientecliente;
	
	private int cu_status;
	
	private java.util.Set ORM_consumo = new java.util.HashSet();
	
	private java.util.Set ORM_pago = new java.util.HashSet();
	
	/**
	 * LLAVE PRIMARIA CUENTA
	 */
	private void setCuenta_ID(int value) {
		this.cuenta_ID = value;
	}
	
	/**
	 * LLAVE PRIMARIA CUENTA
	 */
	public int getCuenta_ID() {
		return cuenta_ID;
	}
	
	public int getORMID() {
		return getCuenta_ID();
	}
	
	/**
	 * TIPO DE CUENTA
	 */
	public void setTipo(String value) {
		this.tipo = value;
	}
	
	/**
	 * TIPO DE CUENTA
	 */
	public String getTipo() {
		return tipo;
	}
	
	/**
	 * CODIGO MEDIDOR
	 */
	public void setCodigo_medidor(int value) {
		this.codigo_medidor = value;
	}
	
	/**
	 * CODIGO MEDIDOR
	 */
	public int getCodigo_medidor() {
		return codigo_medidor;
	}
	
	/**
	 * COMPAÑIA
	 */
	public void setCompania(String value) {
		this.compania = value;
	}
	
	/**
	 * COMPAÑIA
	 */
	public String getCompania() {
		return compania;
	}
	
	/**
	 * ESTADO DE LA CUENTA
	 */
	public void setCu_status(int value) {
		this.cu_status = value;
	}
	
	/**
	 * ESTADO DE LA CUENTA
	 */
	public int getCu_status() {
		return cu_status;
	}
	
	public void setClientecliente(orm.Cliente value) {
		if (clientecliente != null) {
			clientecliente.cuenta.remove(this);
		}
		if (value != null) {
			value.cuenta.add(this);
		}
	}
	
	public orm.Cliente getClientecliente() {
		return clientecliente;
	}
	
	/**
	 * This method is for internal use only.
	 */
	public void setORM_Clientecliente(orm.Cliente value) {
		this.clientecliente = value;
	}
	
	private orm.Cliente getORM_Clientecliente() {
		return clientecliente;
	}
	
	private void setORM_Consumo(java.util.Set value) {
		this.ORM_consumo = value;
	}
	
	private java.util.Set getORM_Consumo() {
		return ORM_consumo;
	}
	
	public final orm.ConsumoSetCollection consumo = new orm.ConsumoSetCollection(this, _ormAdapter, orm.ORMConstants.KEY_CUENTA_CONSUMO, orm.ORMConstants.KEY_CONSUMO_CUENTACUENTA, orm.ORMConstants.KEY_MUL_ONE_TO_MANY);
	
	private void setORM_Pago(java.util.Set value) {
		this.ORM_pago = value;
	}
	
	private java.util.Set getORM_Pago() {
		return ORM_pago;
	}
	
	public final orm.PagoSetCollection pago = new orm.PagoSetCollection(this, _ormAdapter, orm.ORMConstants.KEY_CUENTA_PAGO, orm.ORMConstants.KEY_PAGO_CUENTACUENTA, orm.ORMConstants.KEY_MUL_ONE_TO_MANY);
	
	public String toString() {
		return String.valueOf(getCuenta_ID());
	}
	
}
